home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
FishMarket 1.0
/
FishMarket v1.0.iso
/
fishies
/
351-375
/
disk_351
/
pdc
/
libsrc.lzh
/
LibSrc
/
StdIO
/
gets.c
< prev
next >
Wrap
C/C++ Source or Header
|
1990-04-07
|
2KB
|
47 lines
/*
* Libraries and headers for PDC release 3.3 (C) 1989 Lionel Hummel.
* PDC Software Distribution (C) 1989 Lionel Hummel and Paul Petersen.
* PDC I/O Library (C) 1987 by J.A. Lydiatt.
*
* This code is freely redistributable upon the conditions that this
* notice remains intact and that modified versions of this file not
* be included as part of the PDC Software Distribution without the
* express consent of the copyright holders. No warrantee of any
* kind is provided with this code. For further information, contact:
*
* PDC Software Distribution Internet: BIX:
* P.O. Box 4006 or hummel@cs.uiuc.edu lhummel
* Urbana, IL 61801-8801 petersen@uicsrd.csrd.uiuc.edu
*/
/* gets.c - The ubiquitous gets() function, present solely for compatibility
*
* gets() Read from stdin to buffer until EOF or newline
*
* NOTE: This function is one big bug. Since it doesn't hold any regard for
* the size of the buffer it is copying into, the USER of a program
* containing gets() can cause crashes and other security breaches by
* typing past the end of your buffer. It is provided here for
* compatibility purposes only. DO NOT USE THIS FUNCTION IN THE CODE
* THAT YOU WRITE. Although it is provided here in source form, it
* is not present in PDC.lib.
*/
#include <stdio.h>
char *gets( linbuf )
char *linbuf;
{
char *s;
int c;
s = &linbuf[0];
while ( (c = getchar()) != EOF && c != '\n' )
*s++ = c;
*s = '\0';
if ( c == EOF && s == &linbuf[0] )
return NULL;
return (&linbuf[0]);
}